﻿using System;
using System.Windows.Forms;
using cndp.Model;

namespace cndp.View
{
    public partial class FormAddDiverAndJudge : Form
    {
        public string ClubOrAffilliate = "";
        public string Gender = "";
        public string Nationality = "";
        public string PersonalCodeNumber = "";
        public string PersonName = "";
        public string TypeOfAdd;

        public FormAddDiverAndJudge()
        {
            InitializeComponent();
        }

        private void FormAddDiver_Load(object sender, EventArgs e)
        {
            KeyPreview = true;
            if (TypeOfAdd == "judge")
            {
                Text = @"Lägg till domare till tävlingen";
                labelClubAndAffilliate.Text = @"Domarförbund:";
            }
            else if (TypeOfAdd == "diver")
            {
                Text = @"Lägg till simhoppare till tävlingen";
                labelClubAndAffilliate.Text = @"Klubb:";
            }
            else
                labelClubAndAffilliate.Text = @"Error";

            var toolTip1 = new ToolTip();

            toolTip1.AutoPopDelay = 5000;
            toolTip1.InitialDelay = 1000;
            toolTip1.ReshowDelay = 500;

            toolTip1.ShowAlways = true;

            toolTip1.SetToolTip(LabelHelp, "Dem fyra sista siffrorna i personnumret");
        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
        }

        private void buttonAddDiver_Click(object sender, EventArgs e)
        {
            var d = new Datacheck();
            if (!d.CheckIfContainNumbers(textBoxName.Text))
            {
                PersonName = textBoxName.Text;
                if (comboBoxYear.SelectedIndex > -1 && comboBoxMonth.SelectedIndex > -1 &&
                    comboBoxDays.SelectedIndex > -1)
                {
                    if (textBoxPersonalLastNumbers.TextLength == 4 && d.CheckIfInteger(textBoxPersonalLastNumbers.Text))
                    {
                        PersonalCodeNumber = comboBoxYear.SelectedItem + comboBoxMonth.SelectedItem.ToString() +
                                             comboBoxDays.SelectedItem + "-" + textBoxPersonalLastNumbers.Text;
                        if (radioButtonGenderMale.Checked && !(radioButtonGenderWomen.Checked))
                        {
                            Gender = "Herr";
                            if (!d.CheckIfContainNumbers(textBoxNationality.Text) &&
                                !d.CheckIfContainNumbers(textBoxClubAndAffilliate.Text))
                            {
                                Nationality = textBoxNationality.Text;
                                ClubOrAffilliate = textBoxClubAndAffilliate.Text;
                                DialogResult = DialogResult.OK;
                            }
                            else
                                MessageBox.Show(@"Ogiltigt format på Land och/eller klubb/domarförbund.",
                                    @"Ogiltigt data.");
                        }
                        else if (!(radioButtonGenderMale.Checked) && (radioButtonGenderWomen.Checked))
                        {
                            Gender = "Dam";
                            if (!d.CheckIfContainNumbers(textBoxNationality.Text) &&
                                !d.CheckIfContainNumbers(textBoxClubAndAffilliate.Text))
                            {
                                Nationality = textBoxNationality.Text;
                                ClubOrAffilliate = textBoxClubAndAffilliate.Text;
                                DialogResult = DialogResult.OK;
                            }
                        }
                        else
                        {
                            MessageBox.Show(@"Välj ett kön på simhopparen.", @"Ogiltigt kön.");
                        }
                    }
                    else
                        MessageBox.Show(@"Skriv in giltiga fyra sista siffror.",
                            @"Ogiltigt format på fyra sista siffrorna.");
                }
                else
                    MessageBox.Show(@"Välj ett giltigt födelsedatum.", @"Ogiltigt födelsedatum.");
            }
            else
                MessageBox.Show(@"Skriv in ett giltigt namn. ", @"Ogiltigt namn.");
        }

        private void LabelHelp_Click(object sender, EventArgs e)
        {
        }

        private void FormAddDiverAndJudge_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Escape)
                Close();
        }
    }
}